package org.zhu.consumer.mobile.service;


import feign.RequestLine;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.zhu.common.bean.Category;

import java.util.List;

/**
 * Created by zhu yingzhi on 2017/9/6.
 * @author yingzhi zhu
 * 分类 逻辑处理接口
 */
@FeignClient(value = "service-category",path = "/category",fallback = CategoryServiceHystrix.class)
public interface CategoryService {
    /**
     * 添加分类
     * @param name 名字
     * @param parentPid 父级分类
     * @param categoryDesc 描述
     * @return 数据库影响行数
     */
     @PostMapping("")
     int insertCategory(@RequestParam("name") String name, @RequestParam("parentPid") String parentPid, @RequestParam("categoryDesc") String categoryDesc);

//    /**
//     * 通过父级Pid查找分类
//     * @param parentPid  父级Pid
//     * @return 分类实体 集合
//     */
//     List<Category> findByParentPid(String parentPid);
//
//    /**
//     * 通过pid查找某个分类
//     * @param pid 分类pid
//     * @return 分类实体
//     */
//     Category findOne(String pid);

    /**
     * 查找所有的分类
     * @return 分类实体 集合
     */
     @GetMapping("/all")
     List<Category> findAll();
//    /**
//     * 查找所有的分类
//     * @return 分类实体 集合
//     */
//     List<Category> mFindAll();
//
//    /**
//     * 修改分类名
//     * @param name 分类名
//     * @param sortOrder 排序号
//     * @param categoryDesc 描述
//     * @param pid pid
//     * @return 数据库影响行数
//     */
//     int updateName(String name, int sortOrder, String categoryDesc, String pid);
//
//    /**
//     * 分类是否展示
//     * @param isShow
//     * @return
//     */
//     int isShow(int isShow, String pid);
}
